package com.zhijian.medical.entity.po;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import javax.validation.constraints.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 期刊论文
 * @author Auto Generator
 * @date 2024-04-29 17:19:20
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Api(tags = "期刊论文")
public class JournalArticles {
    /**
     * 主键id
     */
    @ApiModelProperty("主键id")
    private Long id;

    /**
     * 用户id
     */
    @ApiModelProperty("用户id")
    @NotNull(message = "用户id不能为空")
    private Long userId;

    /**
     * 标题
     */
    @ApiModelProperty("标题")
    @NotBlank(message = "标题不能为空")
    private String title;

    /**
     * 摘要
     */
    @ApiModelProperty("摘要")
    private String summary;

    /**
     * 语言，1：中文，2：外文
     */
    @ApiModelProperty("语言，1：中文，2：外文")
    private Byte language;

    /**
     * 期刊名称
     */
    @ApiModelProperty("期刊名称")
    @NotBlank(message = "期刊名称不能为空")
    private String journalName;

    /**
     * 状态，1：正式发表，2：在线发表
     */
    @ApiModelProperty("状态，1：正式发表，2：在线发表")
    @NotNull(message = "状态，1：正式发表，2：在线发表不能为空")
    private Byte status;

    /**
     * 发表日期
     */
    @ApiModelProperty("发表日期")
    @NotBlank(message = "发表日期不能为空")
    private String publishDate;

    /**
     * 文章号
     */
    @ApiModelProperty("文章号")
    private String articleNumber;

    /**
     * 收录情况，多个以逗号隔开
     */
    @ApiModelProperty("收录情况，多个以逗号隔开")
    private String inclusionStatus;

    /**
     * 引用次数
     */
    @ApiModelProperty("引用次数")
    private String numberOfCitations;

    /**
     * 基金标准
     */
    @ApiModelProperty("基金标准")
    private String fundStandards;

    /**
     * 卷号
     */
    @ApiModelProperty("卷号")
    private String jh;

    /**
     * 旗号
     */
    @ApiModelProperty("旗号")
    private String qh;

    /**
     * 开始页码
     */
    @ApiModelProperty("开始页码")
    private Integer startPageNum;

    /**
     * 结束页码
     */
    @ApiModelProperty("结束页码")
    private Integer endPageNum;

    /**
     * 是否包含起始页码，1：是，0：否
     */
    @ApiModelProperty("是否包含起始页码，1：是，0：否")
    private Byte weatherIncludePage;

    /**
     * 作者
     */
    @ApiModelProperty("作者")
    private String author;

    /**
     * 作者类型，1：第一作者，2：共一作者，3：通讯作者，4：共通讯作者，5：其他情况，6：作者署名
     */
    @ApiModelProperty("作者类型，1：第一作者，2：共一作者，3：通讯作者，4：共通讯作者，5：其他情况，6：作者署名")
    private Byte authorType;

    /**
     * 奖励发放人
     */
    @ApiModelProperty("奖励发放人")
    private String rewardIssuer;

    /**
     * 奖励发放时间
     */
    @ApiModelProperty("奖励发放时间")
    private String rewardDate;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createTime;

    /**
     * 结束时间
     */
    @ApiModelProperty("结束时间")
    private Date updateTime;
}